const path = require("path");
const { resolve } = require("path");
const BundleAnalyzerPlugin = require("webpack-bundle-analyzer")
  .BundleAnalyzerPlugin;
// const CompressionPlugin = require("compression-webpack-plugin");
const isPro = process.env.NODE_ENV === "production";
module.exports = {
  outputDir: "dist", //build输出目录
  assetsDir: "assets", //静态资源目录（js, css, img）
  lintOnSave: false, //是否开启eslint
  productionSourceMap: false, // 打包去除map文件

  devServer: {
    // 指定端口
    port: 8086,
    // 直接打开浏览器
    open: true,
    // 使用代理解决跨域问题
    proxy: {
      "/api": {
        target: "http://81.69.27.130",
        changeOrigin: true,
        // 下面这行注释掉本地也会出现404
        pathRewrite: {
          "^/api": "",
        },
      },
    },
  },

  configureWebpack: {
    // 协助分析dist文件
    plugins: [new BundleAnalyzerPlugin()],
    resolve: {
      // alias: {
      //   // 按需引入图标 --> 暂时不可行
      //   "@ant-design/icons/lib/dist$": path.resolve(__dirname, "./src/utils/laztAntdIcon.js"
      //   ),
      // },
    },
  },
  configureWebpack: (config) => {
    if (isPro) {
      // 生产环境配置
      return {
        plugins: [
          new BundleAnalyzerPlugin(),
          // new CompressionPlugin({
          //   test: /\.(js|css|less)$/,
          // // filename: '[path].gz[query]',
          //   threshold: 10240,
          //   minRatio: 0.8,
          //   deleteOriginalAssets: true, // 删除源文件
          // }),
        ],
      };
    } else {
      // 开发环境配置
    }
  },
};
